<!DOCTYPE HTML PUBLIC "-//ORA//DTD CD HTML 3.2//EN">
<HTML>
<HEAD>
<TITLE>[Chapter 17] GregorianCalendar</TITLE>
<META NAME="author" CONTENT="Mark Grand and Jonathan Knudsen">
<META NAME="date" CONTENT="Fri Aug  8 17:42:23 1997">
<META NAME="form" CONTENT="html">
<META NAME="metadata" CONTENT="dublincore.0.1">
<META NAME="objecttype" CONTENT="book part">
<META NAME="otheragent" CONTENT="gmat dbtohtml">
<META NAME="publisher" CONTENT="O'Reilly &amp; Associates, Inc.">
<META NAME="source" CONTENT="SGML">
<META NAME="subject" CONTENT="Java">
<META NAME="title" CONTENT="Java Fundamental Classes Reference">
<META HTTP-EQUIV="Content-Script-Type" CONTENT="text/javascript">
</HEAD>
<body vlink="#551a8b" alink="#ff0000" text="#000000" bgcolor="#FFFFFF" link="#0000ee">

<DIV CLASS=htmlnav>
<H1><a href='index.htm'><IMG SRC="gifs/smbanner.gif"
     ALT="Java Fundamental Classes Reference" border=0></a></H1>
<table width=515 border=0 cellpadding=0 cellspacing=0>
<tr>
<td width=172 align=left valign=top><A HREF="ch17_08.htm"><IMG SRC="gifs/txtpreva.gif" ALT="Previous" border=0></A></td>
<td width=171 align=center valign=top><B><FONT FACE="ARIEL,HELVETICA,HELV,SANSERIF" SIZE="-1">Chapter 17<br>The java.util Package</FONT></B></TD>
<td width=172 align=right valign=top><A HREF="ch17_10.htm"><IMG SRC="gifs/txtnexta.gif" ALT="Next" border=0></A></td>
</tr>
</table>

&nbsp;
<hr align=left width=515>
</DIV>
<DIV CLASS=refnamediv>
<H1>GregorianCalendar</H1>

<H2>Name</H2>

GregorianCalendar

</DIV>

<DIV CLASS=refsect1>
<h2 CLASS=refsect1><A CLASS="TITLE" NAME="ch17-REFSECT1-AUTOID.56">Synopsis</A></h2>

<DL CLASS=variablelist>
<DT CLASS=varlistentry>Class Name:<br>
<DD>

<P CLASS=para>
<tt CLASS=literal>java.util.GregorianCalendar</tt>

<p>
<DT CLASS=varlistentry>Superclass:<br>
<DD>

<P CLASS=para>
<tt CLASS=literal>java.util.Calendar</tt>

<p>
<DT CLASS=varlistentry>Immediate Subclasses:<br>
<DD>

<P CLASS=para>
None

<p>
<DT CLASS=varlistentry>Interfaces Implemented:<br>
<DD>

<P CLASS=para>
None

<p>
<DT CLASS=varlistentry>Availability:<br>
<DD>

<P CLASS=para>
New as of JDK 1.1 </DL>
</DIV>

<DIV CLASS=refsect1>
<h2 CLASS=refsect1><A CLASS="TITLE" NAME="ch17-REFSECT1-AUTOID.57">Description</A></h2>

<P CLASS=para>
The <tt CLASS=literal>GregorianCalendar</tt> class 
is a subclass of the <tt CLASS=literal>abstract</tt> 
<tt CLASS=literal>Calendar</tt> class. <tt CLASS=literal>GregorianCalendar</tt> 
provides an implementation of the calendar that much of the world uses. 
<tt CLASS=literal>GregorianCalendar</tt> has two eras, 
<tt CLASS=literal>BC</tt> and <tt CLASS=literal>AD</tt>. 

<P CLASS=para>
<tt CLASS=literal>GregorianCalendar</tt> provides both Gregorian and
Julian dates, depending on the date that is represented by the
object. The Gregorian calendar was instituted in October 15, 1582, so
any dates before this cut-off time are represented as Julian
dates. Some countries switched from the Julian and the Gregorian
calendar after that date, however. The cutoff date can be changed
using the <tt CLASS=literal>setGregorianChange()</tt> method. When using
Julian dates, be aware that this class does not account for the fact
that the Julian calendar used March 25 as the beginning of the
year. You will have to adjust the year on Julian dates that fall
between January 1 and March 24.

<P CLASS=para>
You can find a fascinating discussion of the history of Western
calendars at
<I CLASS=emphasis>http://barroom.visionsystems.com/serendipity/date/jul_greg.html</I>.

</DIV>

<DIV CLASS=refsect1>
<h2 CLASS=refsect1><A CLASS="TITLE" NAME="ch17-REFSECT1-AUTOID.58">Class Summary</A></h2>

<DIV CLASS=screen>
<P>
<PRE>
public class java.util.GregorianCalendar extends java.util.Calendar {
  // Constants
  public final static int AD;
  public final static int BC;
  // Constructors
  public GregorianCalendar();
  public GregorianCalendar(TimeZone zone);
  public GregorianCalendar(Locale aLocale);
  public GregorianCalendar(TimeZone zone, Locale aLocale);
  public GregorianCalendar(int year, int month, int date);
  public GregorianCalendar(int year, int month, int date, 
                          int hour, int minute);
  public GregorianCalendar(int year, int month, int date, 
                          int hour, int minute, int second);
  // Instance Methods
  public void add(int field, int amount);
  public boolean after(Object when); 
  public boolean before(Object when); 
  public Object clone();
  public boolean equals(Object obj); 
  public int getGreatestMinimum(int field); 
  public final Date getGregorianChange();
  public int getLeastMaximum(int field); 
  public int getMaximum(int field); 
  public int getMinimum(int field); 
  public synchronized int hashCode();
  public boolean isLeapYear(int year);
  public void roll(int field, boolean up);
  public void setGregorianChange(Date date);
  // Protected Instance Methods
  protected void computeFields();
  protected void computeTime();
}
</PRE>
</DIV>

</DIV>

<DIV CLASS=refsect1>
<h2 CLASS=refsect1><A CLASS="TITLE" NAME="ch17-REFSECT1-AUTOID.59">Constants</A></h2>

<DIV CLASS=refsect2>
<h3 CLASS=refsect2><A CLASS="TITLE" NAME="ch17-REFSECT2-AUTOID.132">AD</A></h3>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.146">public final static int AD</A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>
A <tt CLASS=literal>constant</tt> value that represents the AD era, 
which stands for <I CLASS=emphasis>anno Domini</I>, Latin for
"the year of the Lord". People who do not 
want to measure years with a Christian connotation 
call this era CE the Common Era. </DL>
</DIV>

</DIV>

<DIV CLASS=refsect2>
<h3 CLASS=refsect2><A CLASS="TITLE" NAME="ch17-REFSECT2-AUTOID.133">BC</A></h3>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.147">public final static int BC</A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>
A <tt CLASS=literal>constant</tt> value that represents the BC era, 
which stands for <I CLASS=emphasis>before Christ</I>, before the 
birth of Christ. People who do not want to measure years with a Christian 
connotation call this era BCE, which stands for Before the Common Era. </DL>
</DIV>

</DIV>

</DIV>

<DIV CLASS=refsect1>
<h2 CLASS=refsect1><A CLASS="TITLE" NAME="ch17-REFSECT1-AUTOID.60">Constructors</A></h2>

<DIV CLASS=refsect2>
<h3 CLASS=refsect2><A CLASS="TITLE" NAME="ch17-REFSECT2-AUTOID.134">GregorianCalendar</A></h3>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.148">public GregorianCalendar()</A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>
This constructor creates <tt CLASS=literal>a GregorianCalendar</tt> 
that represents the current time using the system's default time 
zone and locale. The default time zone is that returned by <tt CLASS=literal>TimeZone.getDefault()</tt>. 
The default locale is that returned by <tt CLASS=literal>Locale.getDefault()</tt>. </DL>
</DIV>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.149">public GregorianCalendar(TimeZone zone)</A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry>Parameters<br>
<DD>

<P>
<DL CLASS=variablelist>
<DT CLASS=varlistentry><tt CLASS=literal>zone</tt><br>
<DD>

<P CLASS=para>
The <tt CLASS=literal>TimeZone</tt> 
to use. </DL>
<p>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>
This constructor creates a <tt CLASS=literal>GregorianCalendar</tt> 
that represents the current time using the supplied time zone and the default 
locale. The default locale is that returned by <tt CLASS=literal>Locale.getDefault()</tt>. </DL>
</DIV>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.150">public GregorianCalendar(Locale aLocale)</A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry>Parameters<br>
<DD>

<P>
<DL CLASS=variablelist>
<DT CLASS=varlistentry><tt CLASS=literal>aLocale</tt><br>
<DD>

<P CLASS=para>
The <tt CLASS=literal>Locale</tt> 
to use. </DL>
<p>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>
This constructor creates a <tt CLASS=literal>GregorianCalendar</tt> 
that represents the current time using the supplied locale and the default 
time zone. The default time zone is that returned by <tt CLASS=literal>TimeZone.getDefault()</tt>. </DL>
</DIV>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.151">public GregorianCalendar(TimeZone zone, Locale aLocale)</A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry>Parameters<br>
<DD>

<P>
<DL CLASS=variablelist>
<DT CLASS=varlistentry><tt CLASS=literal>zone</tt><br>
<DD>

<P CLASS=para>
The <tt CLASS=literal>TimeZone</tt> 
to use.

<p>
<DT CLASS=varlistentry><tt CLASS=literal>aLocale</tt><br>
<DD>

<P CLASS=para>
The <tt CLASS=literal>Locale</tt> 
to use. </DL>
<p>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>
This constructor creates a <tt CLASS=literal>GregorianCalendar</tt> 
that represents the current time using the supplied time zone and locale. </DL>
</DIV>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.152">public GregorianCalendar(int year, int month, int date)</A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry>Parameters<br>
<DD>

<P>
<DL CLASS=variablelist>
<DT CLASS=varlistentry><tt CLASS=literal>year</tt><br>
<DD>

<P CLASS=para>
The value for the 
year field.

<p>
<DT CLASS=varlistentry><tt CLASS=literal>month</tt><br>
<DD>

<P CLASS=para>
The value for the 
month field, where 0 represents the first month.

<p>
<DT CLASS=varlistentry><tt CLASS=literal>date</tt><br>
<DD>

<P CLASS=para>
The value for the 
day-of-the-month field. </DL>
<p>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>
This constructor creates a <tt CLASS=literal>GregorianCalendar</tt> 
that represents the given date in the default time zone and locale. The 
default time zone is that returned by <tt CLASS=literal>TimeZone.getDefault()</tt>. 
The default locale is that returned by <tt CLASS=literal>Locale.getDefault()</tt>. </DL>
</DIV>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.153"><DIV CLASS=screen> <P> <PRE> public GregorianCalendar(int year, int month, int date, int hour, int minute) </PRE> </DIV></A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry>Parameters<br>
<DD>

<P>
<DL CLASS=variablelist>
<DT CLASS=varlistentry><tt CLASS=literal>year</tt><br>
<DD>

<P CLASS=para>
The value for the 
year field.

<p>
<DT CLASS=varlistentry><tt CLASS=literal>month</tt><br>
<DD>

<P CLASS=para>
The value for the 
month field, where 0 represents the first month.

<p>
<DT CLASS=varlistentry><tt CLASS=literal>date</tt><br>
<DD>

<P CLASS=para>
The value for the 
day-of-the-month field.

<p>
<DT CLASS=varlistentry><tt CLASS=literal>hour</tt><br>
<DD>

<P CLASS=para>
The value for the 
hour field.

<p>
<DT CLASS=varlistentry><tt CLASS=literal>minute</tt><br>
<DD>

<P CLASS=para>
The value for the 
minute field. </DL>
<p>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>
This constructor creates a <tt CLASS=literal>GregorianCalendar</tt> 
that represents the given date and time in the default time zone and locale. 
The default time zone is that returned by <tt CLASS=literal>TimeZone.getDefault()</tt>. 
The default locale is that returned by <tt CLASS=literal>Locale.getDefault()</tt>. </DL>
</DIV>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.154"><DIV CLASS=screen> <P> <PRE> public GregorianCalendar(int year, int month, int date, int hour, int minute, int second) </PRE> </DIV></A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry>Parameters<br>
<DD>

<P>
<DL CLASS=variablelist>
<DT CLASS=varlistentry><tt CLASS=literal>year</tt><br>
<DD>

<P CLASS=para>
The value for the 
year field.

<p>
<DT CLASS=varlistentry><tt CLASS=literal>month</tt><br>
<DD>

<P CLASS=para>
The value for the 
month field, where 0 represents the first month.

<p>
<DT CLASS=varlistentry><tt CLASS=literal>date</tt><br>
<DD>

<P CLASS=para>
The value for the 
day-of-the-month field.

<p>
<DT CLASS=varlistentry><tt CLASS=literal>hour</tt><br>
<DD>

<P CLASS=para>
The value for the 
hour field.

<p>
<DT CLASS=varlistentry><tt CLASS=literal>minute</tt><br>
<DD>

<P CLASS=para>
The value for the 
minute field.

<p>
<DT CLASS=varlistentry><tt CLASS=literal>second</tt><br>
<DD>

<P CLASS=para>
The value for the 
second field. </DL>
<p>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>
This constructor creates a <tt CLASS=literal>GregorianCalendar</tt> 
that represents the given data and time in the default time zone and locale. 
The default time zone is that returned by <tt CLASS=literal>TimeZone.getDefault()</tt>. 
The default locale is that returned by <tt CLASS=literal>Locale.getDefault()</tt>. </DL>
</DIV>

</DIV>

</DIV>

<DIV CLASS=refsect1>
<h2 CLASS=refsect1><A CLASS="TITLE" NAME="ch17-REFSECT1-AUTOID.61">Instance Methods</A></h2>

<DIV CLASS=refsect2>
<h3 CLASS=refsect2><A CLASS="TITLE" NAME="ch17-REFSECT2-AUTOID.135">add</A></h3>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.155">public void add(int field, int amount)</A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry>Parameters<br>
<DD>

<P>
<DL CLASS=variablelist>
<DT CLASS=varlistentry><tt CLASS=literal>field</tt><br>
<DD>

<P CLASS=para>
The time field to 
be modified.

<p>
<DT CLASS=varlistentry><tt CLASS=literal>amount</tt><br>
<DD>

<P CLASS=para>
The amount to add 
to the specified field value. This value can be negative. </DL>
<p>
<DT CLASS=varlistentry>Throws<br>
<DD>

<P>
<DL CLASS=variablelist>
<DT CLASS=varlistentry><tt CLASS=literal>IllegalArgumentException</tt><br>
<DD>

<P CLASS=para>
If <tt CLASS=literal>field</tt> is not a valid time field. </DL>
<p>
<DT CLASS=varlistentry>Overrides<br>
<DD>

<P CLASS=para>
<tt CLASS=literal>Calendar.add()</tt> 

<p>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>
This method adds the given amount to the specified time field. For example, 
you can compute a date 90 days beyond the current date of this <tt CLASS=literal>GregorianCalendar</tt> 
by calling <tt CLASS=literal>add(Calendar.DATE,</tt> 
<tt CLASS=literal>90)</tt>. </DL>
</DIV>

</DIV>

<DIV CLASS=refsect2>
<h3 CLASS=refsect2><A CLASS="TITLE" NAME="ch17-REFSECT2-AUTOID.136">after</A></h3>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.156">public boolean after(Object when)</A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry>Parameters<br>
<DD>

<P>
<DL CLASS=variablelist>
<DT CLASS=varlistentry><tt CLASS=literal>when</tt><br>
<DD>

<P CLASS=para>
The object to compare 
to this <tt CLASS=literal>GregorianCalendar</tt>. </DL>
<p>
<DT CLASS=varlistentry>Returns<br>
<DD>

<P CLASS=para>
<tt CLASS=literal>true</tt> if this object is after 
<tt CLASS=literal>when</tt>; <tt CLASS=literal>false</tt> 
otherwise. 

<p>
<DT CLASS=varlistentry>Overrides<br>
<DD>

<P CLASS=para>
<tt CLASS=literal>Calendar.after()</tt> 

<p>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>
This method returns <tt CLASS=literal>true</tt> if 
<tt CLASS=literal>when</tt> is a <tt CLASS=literal>GregorianCalendar</tt> 
whose value falls before the value of this <tt CLASS=literal>GregorianCalendar</tt>. </DL>
</DIV>

</DIV>

<DIV CLASS=refsect2>
<h3 CLASS=refsect2><A CLASS="TITLE" NAME="ch17-REFSECT2-AUTOID.137">before</A></h3>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.157">public boolean before(Object when)</A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry>Parameters<br>
<DD>

<P>
<DL CLASS=variablelist>
<DT CLASS=varlistentry><tt CLASS=literal>when</tt><br>
<DD>

<P CLASS=para>
The object to compare 
to this <tt CLASS=literal>GregorianCalendar</tt>. </DL>
<p>
<DT CLASS=varlistentry>Returns<br>
<DD>

<P CLASS=para>
<tt CLASS=literal>true</tt> if this object is before 
<tt CLASS=literal>when</tt>; <tt CLASS=literal>false</tt> 
otherwise. 

<p>
<DT CLASS=varlistentry>Overrides<br>
<DD>

<P CLASS=para>
<tt CLASS=literal>Calendar.before()</tt> 

<p>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>
This method returns <tt CLASS=literal>true</tt> if 
<tt CLASS=literal>when</tt> is a <tt CLASS=literal>GregorianCalendar</tt> 
whose value falls after the value of this <tt CLASS=literal>GregorianCalendar</tt>. </DL>
</DIV>

</DIV>

<DIV CLASS=refsect2>
<h3 CLASS=refsect2><A CLASS="TITLE" NAME="ch17-REFSECT2-AUTOID.138">clone</A></h3>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.158">public Object clone()</A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry>Returns<br>
<DD>

<P CLASS=para>
A copy of this <tt CLASS=literal>GregorianCalendar</tt>. 

<p>
<DT CLASS=varlistentry>Overrides<br>
<DD>

<P CLASS=para>
<tt CLASS=literal>Calendar.clone()</tt> 

<p>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>
This method creates a copy of this <tt CLASS=literal>GregorianCalendar</tt> 
and returns it. In other words, the returned <tt CLASS=literal>GregorianCalendar</tt> 
has the same time field values and raw time value as this <tt CLASS=literal>GregorianCalendar</tt>. </DL>
</DIV>

</DIV>

<DIV CLASS=refsect2>
<h3 CLASS=refsect2><A CLASS="TITLE" NAME="ch17-REFSECT2-AUTOID.139">equals</A></h3>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.159">public boolean equals(Object when)</A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry>Parameters<br>
<DD>

<P>
<DL CLASS=variablelist>
<DT CLASS=varlistentry><tt CLASS=literal>when</tt><br>
<DD>

<P CLASS=para>
The object to be compared 
with this object. </DL>
<p>
<DT CLASS=varlistentry>Returns<br>
<DD>

<P CLASS=para>
<tt CLASS=literal>true</tt> if the objects are equal; 
<tt CLASS=literal>false</tt> if they are not. 

<p>
<DT CLASS=varlistentry>Overrides<br>
<DD>

<P CLASS=para>
<tt CLASS=literal>Calendar.equals()</tt> 

<p>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>
This method returns <tt CLASS=literal>true</tt> if 
<tt CLASS=literal>when</tt> is an instance of <tt CLASS=literal>GregorianCalendar</tt>, 
and it contains the same value as the object this method is associated 
with. </DL>
</DIV>

</DIV>

<DIV CLASS=refsect2>
<h3 CLASS=refsect2><A CLASS="TITLE" NAME="ch17-REFSECT2-AUTOID.140">getGreatestMinimum</A></h3>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.160">public int getGreatestMinimum(int field)</A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry>Parameters<br>
<DD>

<P>
<DL CLASS=variablelist>
<DT CLASS=varlistentry><tt CLASS=literal>field</tt><br>
<DD>

<P CLASS=para>
A time field constant. </DL>
<p>
<DT CLASS=varlistentry>Returns<br>
<DD>

<P CLASS=para>
The highest minimum value for the given time field. 

<p>
<DT CLASS=varlistentry>Overrides<br>
<DD>

<P CLASS=para>
<tt CLASS=literal>Calendar.getGreatestMinimum()</tt> 

<p>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>
This method returns the highest minimum value for the given time field, 
if the field has a range of minimum values. If the field has only one 
minimum value, this method is equivalent to <tt CLASS=literal>getMinimum()</tt>. 
All of the fields in <tt CLASS=literal>GregorianCalendar</tt> 
have only one minimum value. </DL>
</DIV>

</DIV>

<DIV CLASS=refsect2>
<h3 CLASS=refsect2><A CLASS="TITLE" NAME="ch17-REFSECT2-AUTOID.141">getGregorianChange</A></h3>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.161">public final Date getGregorianChange()</A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry>Returns<br>
<DD>

<P CLASS=para>
The date this <tt CLASS=literal>GregorianCalendar</tt> 
uses as the change date between the Julian and Gregorian calendars. 

<p>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>

By default, <tt CLASS=literal>GregorianCalendar</tt> considers midnight
local time, October 15, 1582, to be the date when the Gregorian
calendar was adopted. This value can be changed using
<tt CLASS=literal>setGregorianChange()</tt>.
</DL>
</DIV>

</DIV>

<DIV CLASS=refsect2>
<h3 CLASS=refsect2><A CLASS="TITLE" NAME="ch17-REFSECT2-AUTOID.142">getLeastMaximum</A></h3>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.162">public int getLeastMaximum(int field)</A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry>Parameters<br>
<DD>

<P>
<DL CLASS=variablelist>
<DT CLASS=varlistentry><tt CLASS=literal>field</tt><br>
<DD>

<P CLASS=para>
A time field constant. </DL>
<p>
<DT CLASS=varlistentry>Returns<br>
<DD>

<P CLASS=para>
The lowest maximum value for the given time field. 

<p>
<DT CLASS=varlistentry>Overrides<br>
<DD>

<P CLASS=para>
<tt CLASS=literal>Calendar.getLeastMaximum()</tt> 

<p>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>
This method returns the lowest maximum value for the given time field, 
if the field has a range of maximum values. If the field has only one
maximum value, this method is equivalent to <tt CLASS=literal>getMaximum()</tt>. 
For example, for a <tt CLASS=literal>GregorianCalendar</tt>, 
the lowest maximum value of <tt CLASS=literal>DATE_OF_MONTH</tt> 
is 28. </DL>
</DIV>

</DIV>

<DIV CLASS=refsect2>
<h3 CLASS=refsect2><A CLASS="TITLE" NAME="ch17-REFSECT2-AUTOID.143">getMaximum</A></h3>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.163">public int getMaximum(int field)</A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry>Parameters<br>
<DD>

<P>
<DL CLASS=variablelist>
<DT CLASS=varlistentry><tt CLASS=literal>field</tt><br>
<DD>

<P CLASS=para>
A time field constant. </DL>
<p>
<DT CLASS=varlistentry>Returns<br>
<DD>

<P CLASS=para>
The maximum value for the given time field. 

<p>
<DT CLASS=varlistentry>Overrides<br>
<DD>

<P CLASS=para>
<tt CLASS=literal>Calendar.getMaximum()</tt> 

<p>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>
This method returns the maximum value for the given time field. For example, 
for a <tt CLASS=literal>GregorianCalendar</tt>, the 
maximum value of <tt CLASS=literal>DATE_OF_MONTH</tt> 
is 31. </DL>
</DIV>

</DIV>

<DIV CLASS=refsect2>
<h3 CLASS=refsect2><A CLASS="TITLE" NAME="ch17-REFSECT2-AUTOID.144">getMinimum</A></h3>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.164">public int getMinimum(int field)</A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry>Parameters<br>
<DD>

<P>
<DL CLASS=variablelist>
<DT CLASS=varlistentry><tt CLASS=literal>field</tt><br>
<DD>

<P CLASS=para>
A time field constant. </DL>
<p>
<DT CLASS=varlistentry>Returns<br>
<DD>

<P CLASS=para>
The minimum value for the given time field. 

<p>
<DT CLASS=varlistentry>Overrides<br>
<DD>

<P CLASS=para>
<tt CLASS=literal>Calendar.getMinimum()</tt> 

<p>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>
This method returns the minimum value for the given time field. For example, 
for a <tt CLASS=literal>GregorianCalendar</tt>, the 
minimum value of <tt CLASS=literal>DATE_OF_MONTH</tt> 
is 1. </DL>
</DIV>

</DIV>

<DIV CLASS=refsect2>
<h3 CLASS=refsect2><A CLASS="TITLE" NAME="ch17-REFSECT2-AUTOID.145">hashCode</A></h3>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.165">public synchronized int hashCode()</A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry>Returns<br>
<DD>

<P CLASS=para>
A hashcode for this <tt CLASS=literal>GregorianCalendar</tt>. 

<p>
<DT CLASS=varlistentry>Overrides<br>
<DD>

<P CLASS=para>
<tt CLASS=literal>Object.hashCode()</tt> 

<p>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>
This method returns a hashcode for this object. </DL>
</DIV>

</DIV>

<DIV CLASS=refsect2>
<h3 CLASS=refsect2><A CLASS="TITLE" NAME="ch17-REFSECT2-AUTOID.146">isLeapYear</A></h3>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.166">public boolean isLeapYear(int year)</A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry>Parameters<br>
<DD>

<P>
<DL CLASS=variablelist>
<DT CLASS=varlistentry><tt CLASS=literal>year</tt><br>
<DD>

<P CLASS=para>
The year to test. </DL>
<p>
<DT CLASS=varlistentry>Returns<br>
<DD>

<P CLASS=para>
<tt CLASS=literal>true</tt> if the given year is a 
leap year; <tt CLASS=literal>false</tt> otherwise. 

<p>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>
This method returns a <tt CLASS=literal>boolean</tt> 
value that indicates whether or not the specified year is a leap year. 
Leap years are those years that are divisible by 
4, except those that are divisible by 100, unless they are divisible by 
400. For example, 1900 is not a leap year because it is divisible by 100 
but not by 400. The year 2000 is a leap year. </DL>
</DIV>

</DIV>

<DIV CLASS=refsect2>
<h3 CLASS=refsect2><A CLASS="TITLE" NAME="ch17-REFSECT2-AUTOID.147">roll</A></h3>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.167">public void roll(int field, boolean up)</A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry>Parameters<br>
<DD>

<P>
<DL CLASS=variablelist>
<DT CLASS=varlistentry><tt CLASS=literal>field</tt><br>
<DD>

<P CLASS=para>
The time field to 
be adjusted.

<p>
<DT CLASS=varlistentry><tt CLASS=literal>up</tt><br>
<DD>

<P CLASS=para>
A <tt CLASS=literal>boolean</tt> 
value that indicates if the given field should be incremented. </DL>
<p>
<DT CLASS=varlistentry>Throws<br>
<DD>

<P>
<DL CLASS=variablelist>
<DT CLASS=varlistentry><tt CLASS=literal>IllegalArgumentException</tt><br>
<DD>

<P CLASS=para>
If <tt CLASS=literal>field</tt> is not a valid time field. </DL>
<p>
<DT CLASS=varlistentry>Overrides<br>
<DD>

<P CLASS=para>
<tt CLASS=literal>Calendar.roll()</tt> 

<p>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>
 
This method adds or subtracts one time unit from the
given time field.  For example, to increase the current date by one
day, you can call <tt CLASS=literal>roll(GregorianCalendar.DATE,</tt>
<tt CLASS=literal>true)</tt>.

<P CLASS=para>
The method maintains the field being rolled within its valid range.
For example, in a calendar system that uses hours and minutes to
measure time, rolling the minutes up from 59 sets that field to 0.
By the same token, rolling that field down from 0 sets it to 59.

<P CLASS=para>
The <tt CLASS=literal>roll()</tt> method does not adjust the value
of any other field than the one specified by its <tt CLASS=literal>field</tt> 
argument.  In particular, for calendar systems that have months 
with different numbers of days, it may be necessary to adjust the 
month and also year when the day of the month is rolled up. For
example, calling <tt CLASS=literal>roll(GregorianCalendar.DAY_OF_MONTH,</tt> 
<tt CLASS=literal>true)</tt> on a <tt CLASS=literal>GregorianCalendar</tt> 
that represents December 31, 1996 changes the date to December 1, 1996. 
In addition, calling <tt CLASS=literal>roll()</tt> may make the
fields inconsistent. For example, calling
<tt CLASS=literal>roll(GregorianCalendar.MONTH,</tt> 
<tt CLASS=literal>true)</tt> on a <tt CLASS=literal>GregorianCalendar</tt> 
that represents January 31, 1997 changes the date to February
31, 1997. It is the responsibility of the caller of 
<tt CLASS=literal>roll()</tt> to adjust the other fields.</DL>
</DIV>

</DIV>

<DIV CLASS=refsect2>
<h3 CLASS=refsect2><A CLASS="TITLE" NAME="ch17-REFSECT2-AUTOID.148">setGregorianChange</A></h3>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.168">public void setGregorianChange(Date date)</A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry>Parameters<br>
<DD>

<P>
<DL CLASS=variablelist>
<DT CLASS=varlistentry><tt CLASS=literal>date</tt><br>
<DD>

<P CLASS=para>
A <tt CLASS=literal>Date</tt> 
object that represents the new time value. </DL>
<p>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>
This method sets the date that this <tt CLASS=literal>GregorianCalendar</tt> 
uses as the change date between the Julian and Gregorian calendars. The 
default is midnight local time, October 15, 1582. This is the date that 
Pope Gregory instituted the calendar in many Catholic countries in Europe. 
Most Catholic countries followed within a few years. Protestant England 
and America did not adopt the new calendar until September 14, 1752. </DL>
</DIV>

</DIV>

</DIV>

<DIV CLASS=refsect1>
<h2 CLASS=refsect1><A CLASS="TITLE" NAME="ch17-REFSECT1-AUTOID.62">Protected Instance Methods</A></h2>

<DIV CLASS=refsect2>
<h3 CLASS=refsect2><A CLASS="TITLE" NAME="ch17-REFSECT2-AUTOID.149">computeFields</A></h3>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.169">protected void computeFields()</A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry><tt CLASS=literal>Overrides</tt><br>
<DD>

<P CLASS=para>
<tt CLASS=literal>Calendar.computeFields()</tt> 

<p>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>
This method calculates the time fields of this <tt CLASS=literal>GregorianCalendar</tt> 
from its raw time value. </DL>
</DIV>

</DIV>

<DIV CLASS=refsect2>
<h3 CLASS=refsect2><A CLASS="TITLE" NAME="ch17-REFSECT2-AUTOID.150">computeTime</A></h3>

<DIV CLASS=refsect3>
<h4 CLASS=refsect3><A CLASS="TITLE" NAME="ch17-REFSECT3-AUTOID.170">protected void computeTime()</A></h4>

<DL CLASS=variablelist>
<DT CLASS=varlistentry><tt CLASS=literal>Overrides</tt><br>
<DD>

<P CLASS=para>
<tt CLASS=literal>Calendar.computeTime()</tt> 

<p>
<DT CLASS=varlistentry>Description<br>
<DD>

<P CLASS=para>
This method calculates the raw time value of this <tt CLASS=literal>GregorianCalendar</tt> 
from its time field values. </DL>
</DIV>

</DIV>

</DIV>

<DIV CLASS=refsect1>
<h2 CLASS=refsect1><A CLASS="TITLE" NAME="ch17-REFSECT1-AUTOID.63">Inherited Variables</A></h2>

<DIV CLASS=informaltable>
<P>
<TABLE CLASS=INFORMALTABLE>
<TR CLASS=row>
<TH ALIGN="LEFT">

<P CLASS=para>
Variable</TH>
<TH ALIGN="LEFT">

<P CLASS=para>
Inherited From</TH>
<TH ALIGN="LEFT">

<P CLASS=para>
Variable</TH>
<TH ALIGN="LEFT">

<P CLASS=para>
Inherited From</TH>
</TR>
<TR CLASS=row>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>areFieldsSet</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>fields</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
</TR>
<TR CLASS=row>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>isSet</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>isTimeSet</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
</TR>
<TR CLASS=row>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>time</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
<TD ALIGN="LEFT">&nbsp;</TD>
<TD ALIGN="LEFT">&nbsp;</TD>
</TR>
</TABLE>
<P>
</DIV>

</DIV>

<DIV CLASS=refsect1>
<h2 CLASS=refsect1><A CLASS="TITLE" NAME="ch17-REFSECT1-AUTOID.64">Inherited Methods</A></h2>

<DIV CLASS=informaltable>
<P>
<TABLE CLASS=INFORMALTABLE>
<TR CLASS=row>
<TH ALIGN="LEFT">

<P CLASS=para>
Method</TH>
<TH ALIGN="LEFT">

<P CLASS=para>
Inherited From</TH>
<TH ALIGN="LEFT">

<P CLASS=para>
Method</TH>
<TH ALIGN="LEFT">

<P CLASS=para>
Inherited From</TH>
</TR>
<TR CLASS=row>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>clear()</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>clear(int)</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
</TR>
<TR CLASS=row>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>complete()</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>finalize()</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Object</tt></TD>
</TR>
<TR CLASS=row>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>get(int)</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>getClass()</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Object</tt></TD>
</TR>
<TR CLASS=row>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>getFirstDayOfWeek()</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>getMinimumDaysInFirstWeek()</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
</TR>
<TR CLASS=row>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>getTime()</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>getTimeInMillis()</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
</TR>
<TR CLASS=row>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>getTimeZone()</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>internalGet(int)</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
</TR>
<TR CLASS=row>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>isLenient()</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>isSet(int)</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
</TR>
<TR CLASS=row>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>notify()</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Object</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>notifyAll()</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Object</tt></TD>
</TR>
<TR CLASS=row>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>set(int, int)</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>set(int, int, int)</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
</TR>
<TR CLASS=row>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>set(int, int, int, int, int)</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>set(int, int, int, int, int, int)</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
</TR>
<TR CLASS=row>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>setFirstDayOfWeek(int)</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>setLenient(boolean)</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
</TR>
<TR CLASS=row>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>setMinimalDaysInFirstWeek(int)</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>setTime(Date)</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
</TR>
<TR CLASS=row>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>setTimeInMillis(long)</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>setTimeZone(TimeZone)</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Calendar</tt></TD>
</TR>
<TR CLASS=row>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>toString()</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Object</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>wait()</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Object</tt></TD>
</TR>
<TR CLASS=row>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>wait(long)</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Object</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>wait(long, int)</tt></TD>
<TD ALIGN="LEFT">

<P CLASS=para>
<tt CLASS=literal>Object</tt></TD>
</TR>
</TABLE>
<P>
</DIV>

</DIV>

<DIV CLASS=refsect1>
<h2 CLASS=refsect1><A CLASS="TITLE" NAME="ch17-REFSECT1-AUTOID.65">See Also</A></h2>

<P CLASS=para>
<tt CLASS=literal>Calendar</tt>, 
<tt CLASS=literal>Cloneable</tt>, 
<tt CLASS=literal>Date</tt>, 
<tt CLASS=literal>IllegalArgumentException</tt>, 
<tt CLASS=literal>Locale</tt>, 
<tt CLASS=literal>Serializable</tt>, 
<tt CLASS=literal>TimeZone</tt> 
</DIV>


<DIV CLASS=htmlnav>

<P>
<HR align=left width=515>
<table width=515 border=0 cellpadding=0 cellspacing=0>
<tr>
<td width=172 align=left valign=top><A HREF="ch17_08.htm"><IMG SRC="gifs/txtpreva.gif" ALT="Previous" border=0></A></td>
<td width=171 align=center valign=top><a href="index.htm"><img src='gifs/txthome.gif' border=0 alt='Home'></a></td>
<td width=172 align=right valign=top><A HREF="ch17_10.htm"><IMG SRC="gifs/txtnexta.gif" ALT="Next" border=0></A></td>
</tr>
<tr>
<td width=172 align=left valign=top>EventObject</td>
<td width=171 align=center valign=top><a href="index/idx_0.htm"><img src='gifs/index.gif' alt='Book Index' border=0></a></td>
<td width=172 align=right valign=top>Hashtable</td>
</tr>
</table>
<hr align=left width=515>

<IMG SRC="gifs/smnavbar.gif" USEMAP="#map" BORDER=0> 
<MAP NAME="map"> 
<AREA SHAPE=RECT COORDS="0,0,108,15" HREF="../javanut/index.htm"
alt="Java in a Nutshell"> 
<AREA SHAPE=RECT COORDS="109,0,200,15" HREF="../langref/index.htm" 
alt="Java Language Reference"> 
<AREA SHAPE=RECT COORDS="203,0,290,15" HREF="../awt/index.htm" 
alt="Java AWT"> 
<AREA SHAPE=RECT COORDS="291,0,419,15" HREF="../fclass/index.htm" 
alt="Java Fundamental Classes"> 
<AREA SHAPE=RECT COORDS="421,0,514,15" HREF="../exp/index.htm" 
alt="Exploring Java"> 
</MAP>
</DIV>

</BODY>
</HTML>
